using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class Shield : MonoBehaviour
{
    [SerializeField] private float cooldown;
    [HideInInspector] public bool isCooldown;

    private Image shieldImage;
    private PlayerController player;

    // Получение объектов из окружения
    private void Start() {
        shieldImage = GetComponent<Image>();
        player = GameObject.FindGameObjectWithTag("Player").GetComponent<PlayerController>();
        isCooldown = true;
    }

    // Обработка таймера действия бонуса щит
    private void Update() {
        if (isCooldown) {
            shieldImage.fillAmount -= 1 / cooldown * Time.deltaTime;
            if (shieldImage.fillAmount <= 0) {
                shieldImage.fillAmount = 1;
                isCooldown = false;
                player.shield.SetActive(false);
                gameObject.SetActive(false);
            }
        }
    }

    public void ResetTimer() { // Сборс таймера
        shieldImage.fillAmount = 1;
    }

    public void ReduceTimer(int damage) { // Уменьшение времени действия таймера
        shieldImage.fillAmount += damage / 5f;
    }
}
